#ifndef __EEGDATARELAY_H__
#define __EEGDATARELAY_H__

#include <QObject>
#include <armadillo>
#include <vector>

#include "BRE_EEG_dataStruct.h"
#include "ConfigImport.h"

class EEGDataRelay : public QObject
{
    Q_OBJECT

private:
    /* data */
    ConfigImport *sys_config;
    int sendPointNum;
    int sim_accumulateNum;
    arma::cube sim_rec_buff;


public:
    // explicit EEGDataRelay(QObject *parent=nullptr);
    explicit EEGDataRelay(ConfigImport *sys_config, QObject *parent=nullptr);
    ~EEGDataRelay();

signals:
    void dataPrepared(const arma::cube &eegData);

public slots:
    // 无线放大器设备
    void receiveData(const std::vector <EEG_VOLTAGE>& eegData);
    // 仿真设备
    void receiveData(const arma::fcube& eegData);

};







#endif
